4a3ae4e9b67c0a0bf278f6ebf714148a01b899f8,pentaho-aggdesigner-core/src/org/pentaho/aggdes/model/ssas/ConversionUtil.java,ConversionUtil,populateHierarchies,#Element#Element#Element#Element#Table#List#String#,591

Before Change


          Element mondrianHierarchy = DocumentFactory.getInstance().createElement("Hierarchy");

          mondrianHierarchy.addAttribute("name", getXPathNodeText(databaseHierarchy, "assl:Name"));
          mondrianHierarchy.addAttribute("primaryKey", getXPathNodeText(ssasDimensionKeyAttribute,"assl:KeyColumns/assl:KeyColumn/assl:Source/assl:ColumnID"));
          Element allMemberName = (Element)databaseHierarchy.selectSingleNode("assl:AllMemberName");
          if (allMemberName != null && allMemberName.getTextTrim().length() != 0) {
              mondrianHierarchy.addAttribute("allMemberName", allMemberName.getTextTrim());

After Change


          mondrianHierarchy.addAttribute("name", getXPathNodeText(databaseHierarchy, "assl:Name"));
          String tableID = getXPathNodeText(ssasDimensionKeyAttribute,"assl:KeyColumns/assl:KeyColumn/assl:Source/assl:TableID");
          Table primaryKeyTable = findTable(allTables, tableID);
          String primaryKey = getXPathNodeText(ssasDimensionKeyAttribute,"assl:KeyColumns/assl:KeyColumn/assl:Source/assl:ColumnID");
          Column primaryKeyColumn = primaryKeyTable.findColumn(primaryKey);
          
          mondrianHierarchy.addAttribute("primaryKey", primaryKeyColumn.dbName);

          Element allMemberName = (Element)databaseHierarchy.selectSingleNode("assl:AllMemberName");
          if (allMemberName != null && allMemberName.getTextTrim().length() != 0) {